\section{Implementation}

\frame
{
\frametitle{Implementation}

\begin{itemize}

\item P2P node written in Python 

\item Server running Apache with python module


\item MySQL used for:

\begin{itemize}
\item Storing user information: passwords in SHA-256
\item Certificates: issued and CRL
\item Active nodes
\end{itemize}


\end{itemize}

}





\frame
{
\frametitle{Python}


\begin{itemize}

\item Why SSL module of python is insecure:

\begin{itemize}
\item Client side doesn't check the certificate hostname 
\item M2Crypto does!
\item Also more options: set\_verify(SSL.verify\_peer | SSL.verify\_fail\_if\_no\_peer\_cert, depth=9)
\end{itemize}

\item Direct calls in openSSL using files in some cases (OCSP)

\item Libraries used:

\begin{itemize}
\item M2Crypto lib
\item SQLAlchemy: Database Toolkit 
 \item ... ?
\end{itemize}

\end{itemize}

}





\frame
{
\frametitle{TODO}


\begin{itemize}


\item Interface in Web Server

\item Push data to web server in case of emergency


\item NAT/Firewall

\begin{itemize}
\item Communication 
\item Security
\end{itemize}

\item Case of insider (Node)?

\item DoS?


\item Web server session policy
\item SQL user policy





\end{itemize}

}







